import { strokeStyleType } from './canvas-types'

/**
 * 所有canvas组件公共的属性
 */
export interface baseType {
  /**
   * x轴上的位置
   */
  x?: number
  /**
   * y轴上的位置
   */
  y?: number
  /**
   * 图形的旋转角度
   */
  rotate?: number
  /**
   * 图形的宽度
   */
  width?: number
  /**
   * 图形的高度
   */
  height?: number

  /**
   *  边框的颜色
   */
  fill?: string
  /**
   *  边框的颜色
   */
  stroke?: string
  /**
   *  边框的宽度
   */
  strokeWidth?: number
  /**
   *  阴影的属性
   */
  shadow?: string
}

/**
 *矩形
 */
export interface rectType extends baseType {
  type?: 'Rect'
  /**
   * 转角的半径
   */
  cornerRadius?: number | number[]
}

/**
 * 圆形
 */
export interface circleType extends baseType {
  type?: 'Circle'
  angle?: 0
}
export interface textOption {
  x: number
  y: number
  text: string
  fontStyle: string
  fontWeight: string
  fontSize: number
  width: number
  height: number
  line?: number
  stroke: strokeStyleType
  textDecoration?: string
}
